import { createStore, createLogger } from 'vuex'
import user from './modules/user'
import cart from './modules/cart'
import createPersistedstate from 'vuex-persistedstate'

export default createStore({
  state: {
  },
  mutations: {
  },
  actions: {
  },
  modules: {
    user,
    cart
  },
  plugins: [
    // 作用机制:加入持久化缓存的模板中的数据一旦发生变化之后就会自动往本地存
    // vuex中cart/user中的响应式数据和本地1s永远是同步(俩个方向:数据变化 vuex -〉本地刷新本地->vuex)
    createPersistedstate({
      key: 'rabbit-133', // 将来vuex中的数据存入本地ls时使用的key的名称
      paths: ['user', 'cart'] // 想把哪些模板中的响应式数据进行持久化就把它的名字写过来
    }),
    createLogger()// 每次提交mutation函数都会在浏览器打印区域打印出本次mutation提交的关键信息
  ]
})
